There are numerous telecommunications standards in use, such as CCITT standards V24, V35, G704, and X50, for example. All of these standards seek to synchronize a serial data stream in such a manner as to enable data words to be identified correctly, each word being constituted by a predetermined number of individual data bits. The digital data word to be transmitted (known in the art as a sequence or pattern) is synchronized bit by bit with a clock defining the data transmission rate, in order to form a data stream. In a typical transmission standard, the data sequence is surrounded by synchronization bits which are used by the telecommunications channel to ensure correct reception and routing of data. In a simple standard, the data stream includes a prefix constituted by a predetermined code (the "start" bits) and it is followed by a second predetermined code (the "stop" bits). Data may be received after the start bits have been detected, and detection of the stop bits guarantees that synchronization has not been lost and that the sequence has been validly received. The data stream constituted by the sequence and the synchronization bits is called a "frame". In many standards, frames are themselves grouped into multiframes each containing a predetermined number of frames, with each multiframe having its own synchronization bits. This improves synchronization and enables data coming from a plurality of different sources to be multiplexed in a single multiframe. For example, a sequence from each source may be transmitted in the same frame position within each multiframe. Typically a standard specifies the number of sequence bits, the number and position of synchronization bits (for example the number of start bits and the number of stop bits), the number of frames per multiframe, and the number and position of multiframe synchronization bits. A standard will also specify the characteristics of the waveform which constitutes the data stream, for example voltage levels for high and low bits, and waveform rise times at bit transitions.
Telecommunications networks need to be tested in order to verify that communication is taking place in compliance with a selected standard, and that this standard enables transmission to take place with a reasonably low error rate. In order to perform such testing, a data generator is used for injecting data into the network. At the receiving end measurements are made to establish various parameters about the network, and tests may be performed, for example, to answer the following questions:
i) are the waveforms appearing at the receiving end acceptable according to the standard;
ii) can receiving equipment operating in compliance with the standard be synchronized correctly; and
iii) can data be received reliably?
A test of type (i) above could be a relatively simple test, performed with a measuring instrument, for example an ancilloscope. Some receiving equipment (including at least the synchronizing circuits) is required to perform a test of type (ii) above, whereas an entire receiver capable of decoding and comparing or recording data is required for a type (iii) test.
All of these types of tests share the requirement for a data generator capable of producing a representative data stream in compliance with the standard in use. Conventional data generators comprise a sequence generator having a clock input such that a data bit is output at each clock transition for example, together with some control hardware to extract a sequence at the required time and to add synchronization bits to the pulse train. Sequence generators are well known in the art and, for example, they may produce sequence data by means of a predetermined algorithm or function (e.g. a polynomial function) so that it is possible to determined whether reception is error-free, or they may produce a random signal in order to enable statistical characteristics about a transmission network to be established.
It is desirable for a data generator to be capable of operating in compliance with more than one standard, since such equipment is typically portable for field testing and there are many different network standards to be tested. When there are data rate differences between networks to be tested, merely changing the clock rate may suffice, but when different standards are concerned, then different control hardware is necessary. Data generators are typically fitted with switches for switching the control hardware (e.g. timers, gates, and counters) so as to control the sequence generator in compliance with the selected standard, or such generators are of modular design enabling cards to be inserted including control hardware appropriate for the standard under consideration.
Data generators designed in this way suffer from various drawbacks. Networks can be tested only when they implement standards for which control hardware is available. It may be difficult to adapt an existing generator to a newly-specified standard, and at best there will be a delay before a user can obtain new control hardware. Such generators are not easily adapted to tests performed on multiple standards, and this type of test is impossible with modular generators.